first2(0, X) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
from1(X) -> cons2(X, from1(s1(X)))
↳ QTRS
↳ DependencyPairsProof
first2(0, X) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
from1(X) -> cons2(X, from1(s1(X)))
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
FROM1(X) -> FROM1(s1(X))
first2(0, X) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
from1(X) -> cons2(X, from1(s1(X)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
FROM1(X) -> FROM1(s1(X))
first2(0, X) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
from1(X) -> cons2(X, from1(s1(X)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
FROM1(X) -> FROM1(s1(X))
first2(0, X) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
from1(X) -> cons2(X, from1(s1(X)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
first2(0, X) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
from1(X) -> cons2(X, from1(s1(X)))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
POL( FIRST2(x1, x2) ) = max{0, 2x1 + 2x2 - 2}
POL( cons2(x1, x2) ) = 2x1 + 2x2 + 2
POL( s1(x1) ) = 2x1 + 2
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
first2(0, X) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
from1(X) -> cons2(X, from1(s1(X)))